package com.rc.saas.mini.service.market;

import com.rc.saas.mini.common.base.BaseService;
import com.rc.saas.mini.mapper.market.MarketActivityMapper;
import com.rc.saas.mini.model.market.MarketActivity;
import com.rc.saas.mini.model.market.MarketActivityExample;
import com.rc.saas.mini.model.member.MemberInfo;
import com.rc.saas.mini.model.recharge.RechargeOrder;
import com.rc.saas.mini.vo.market.MarketActivityTicketVo;
import com.rc.saas.mini.vo.market.MarketActivityVo;
import com.rc.saas.mini.vo.market.MarketActivityVo2;

import java.util.List;

/**
 * @author wangzhengwei
 * @create 2021/4/30
 */
public interface MarketActivityService extends BaseService<Long, MarketActivity, MarketActivityExample, MarketActivityMapper> {

    List<MarketActivityVo> listByTenant(String tenantCode, String sendType, String activityType);


    /**
     * 活动发送优惠券功能
     */
    //void sendChargeTicketByMarketActivity(Long memberId, BigDecimal amount, String tenantCode, String activityType, Long rechargeOrderId);

    List<MarketActivityVo> listActivity(String tenantCode,Long memberId, String sendType, String activityType);

    List<MarketActivity> listCurrentActivity(String tenantCode, String sendType, String rewardType, String activityType);

    List<MarketActivityVo2> listActivityRuleWithGive(String activityIndex,String tenantCode, Long memberId);

    boolean insertActivityTicket(Long marketActivityId, MemberInfo member);

    List<MarketActivityVo2> listHistoryActivityRuleWithGive(String tenantCode, Long memberId);


    void activityAddMember(Long memberId);

    void rechangerMember(Long memberId, RechargeOrder rechargeOrder);
}
